#ifndef _BSP_ADC_H_
#define _BSP_ADC_H_

#include <stdint.h>

#define ADC0_CH_NUM 10U // ADC1采样通道数
#define ADC_REF 3000    // 3000mv

typedef enum
{
    AN_Temp1_Chl = 0U, // 温度1
    AN_Temp2_Chl,      // 温度2
    AN_Temp3_Chl,      // 温度3
    AN_Temp4_Chl,      // 温度4
    AN_Temp5_Chl,      // 温度5
    AN_Temp6_Chl,      // 温度6
    AN_BatVol_Chl,     // 电池总压
    AN_LoadVol_Chl,    // 负载总压
    AN_Chip_TMP_Chl,   // 芯片温度
    AN_Ref_Vol_Chl,    // 参考电压
} ADC_ChannelTypeDef;

typedef struct
{
    void (*finit)(void);
    uint16_t (*fread)(ADC_ChannelTypeDef);
} dv_ADC_TypeDef;

extern void init_bsp_adc(void);
extern dv_ADC_TypeDef dv_ADC;

#endif